package com.ljq.ioc;

import com.ljq.ioc.core.BeanFactory;
import com.ljq.ioc.excptions.InjectFailException;
import com.ljq.ioc.model.A;
import com.ljq.ioc.model.Configuration;
import com.ljq.ioc.model.F;
import com.ljq.ioc.model.debug.G;
import com.ljq.ioc.model.impl.E;

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.Arrays;

public class application {

    public static void main(String[] args) throws InjectFailException, IllegalAccessException, InvocationTargetException, InstantiationException {
        BeanFactory beanFactory = new BeanFactory();
        beanFactory.scanBeanByPackge("com.ljq.ioc.model");
        A a = beanFactory.getBean(A.class);
        a.BMethod();
        a.CMethod();
        a.DMethod();
//        E e = beanFactory.getBean(E.class);
//        e.printE();
//        beanFactory.getBean(G.class);
        System.out.println();
    }
}
